Data packet transmission method and device, storage medium and terminal

ABSTRACT

A data packet transmission method and device, a storage medium and a terminal are provided. During multi-link transmission, a first failed data packet in a transmission window is duplicated to at least one other link of multiple links, where the multiple links include a first link on which the first failed data packet is transmitted and the at least one other link. The first failed data packet is retransmitted on the at least one other link and the first link, wherein the first failed data packet is a data packet whose transmission does not succeed and which has a smallest sequence number in the transmission window.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is the U.S. national stage of application No. PCT/CN2020/086939,filed on Apr. 26, 2020. Priority under 35 U.S.C. § 119(a) and 35 U.S.C.§ 365(b) is claimed from Chinese Patent Application No. 201910440301.9,filed on May 24, 2019, the disclosure of which is also incorporatedherein by reference.

TECHNICAL FIELD

The present disclosure generally relates to communication technologyfield, and more particularly, to a data packet transmission method anddevice, a storage medium and a terminal.

BACKGROUND

At present, in a single-link system in the traditional Institute ofElectrical and Electronics Engineers 802.11 (IEEE 802.11) standard (forexample, the Wireless Local Area Network (WLAN) standard), in a casethat data packet aggregation is allowed, when sequence numbers (SNs) oftransmitted data packets reach the end of a transmission window (TXwindow), if transmission of a data packet with a relatively small SNdoes not succeed, other data packets may not be transmitted untilretransmission of the data packet succeeds or the data packet isdropped.

In contrast to the traditional single-link system, in a multi-linksystem, data packets can be transmitted on one of a plurality ofsupported links. Generally, each data packet can be transmitted on anyone of the links. Even in a case of non-aggregation, a concept of TXwindow still needs to be introduced. In a case that data packetaggregation is allowed, at a same window size, data transmissionblocking more likely occurs in the multi-link system than in thesingle-link system.

SUMMARY

Embodiments of the present disclosure may mitigate data packettransmission blocking caused by failed data packets in a WLAN multi-linksystem.

In an embodiment of the present disclosure, a data packet transmissionmethod is provided, including: during multi-link transmission,duplicating a first failed data packet in a transmission window to atleast one other link of multiple links, wherein the multiple linksinclude a first link on which the first failed data packet istransmitted and the at least one other link; and retransmitting thefirst failed data packet on the at least one other link and the firstlink, wherein the first failed data packet is a data packet whosetransmission does not succeed and which has a smallest sequence numberin the transmission window.

Optionally, duplicating the first failed data packet in the transmissionwindow to the at least one other link of the multiple links includes:predicting whether the transmission window is in a data packet fullcondition, wherein when a difference between an end sequence number ofthe transmission window and a maximum sequence number of data packets inthe transmission window is less than a first preset threshold, thetransmission window is determined to be in the data packet fullcondition; and if the transmission window is in the data packet fullcondition, duplicating the first failed data packet in the transmissionwindow to the at least one other link of the multiple links, wherein thefirst preset threshold is a positive integer.

Optionally, prior to duplicating the first failed data packet in thetransmission window to the at least one other link of the multiplelinks, the method further includes: if a difference between the sequencenumber of the first failed data packet and a start sequence number ofthe transmission window exceeds a second preset threshold, updating thestart sequence number of the transmission window, wherein the updatedstart sequence number of the transmission window is equal to a sum ofthe start sequence number of the transmission window and a third presetthreshold, wherein the second preset threshold and the third presetthreshold are positive integers, the third preset threshold is not lessthan 1 and not greater than N, and N is the difference between thesequence number of the first failed data packet and the start sequencenumber of the transmission window.

Optionally, prior to updating the start sequence number of thetransmission window, the method further includes: transmitting a messageof updating the start sequence number of the transmission window,wherein the message is carried by a block acknowledgement request frame,a predefined transmission window start sequence number update frame, adata frame with piggyback information or a control signaling frame.

Optionally, prior to predicting whether the transmission window is in adata packet full condition, the method further includes: determiningwhether a difference between the sequence number of the first faileddata packet and a start sequence number of the transmission window isless than or equal to a fourth preset threshold, wherein if thedifference is determined to be less than or equal to the fourth presetthreshold, whether the transmission window is in a data packet fullcondition is determined.

Optionally, the method further includes: if retransmission of the firstfailed data packet succeeds, and transmission of at least one other datapacket in the transmission window does not succeed, updating a startsequence number of the transmission window, wherein the updated startsequence number of the transmission window is a smallest sequence numberof the at least one data packet.

Optionally, the method further includes: if retransmission of the firstfailed data packet succeeds, and transmission of all other data packetsin the transmission window succeeds, updating a start sequence number ofthe transmission window, wherein the updated start sequence number ofthe transmission window is an end sequence number of the transmissionwindow plus one.

Optionally, the method further includes: if retransmission of the firstfailed data packet succeeds, stopping retransmitting the first faileddata packet.

In an embodiment of the present disclosure, a data packet transmissiondevice is provided, including: a duplication circuitry configured to:during multi-link transmission, duplicate a first failed data packet ina transmission window to at least one other link of multiple links,wherein the multiple links include a first link on which the firstfailed data packet is transmitted and the at least one other link; and aretransmission circuitry configured to retransmit the first failed datapacket on the at least one other link and the first link, wherein thefirst failed data packet is a data packet whose transmission does notsucceed and which has a smallest sequence number in the transmissionwindow.

In an embodiment of the present disclosure, a storage medium havingcomputer instructions stored therein is provided, wherein when thecomputer instructions are executed, the above method is performed.

In an embodiment of the present disclosure, a terminal including amemory and a processor is provided, wherein the memory has computerinstructions stored therein, and when the processor executes thecomputer instructions, the above method is performed.

Embodiments of the present disclosure may provide following advantages.

Embodiments of the present disclosure provide a data packet transmissionmethod, including: during multi-link transmission, duplicating a firstfailed data packet in a transmission window to at least one other linkof multiple links, wherein the multiple links include a first link onwhich the first failed data packet is transmitted and the at least oneother link; and retransmitting the first failed data packet on the atleast one other link and the first link, wherein the first failed datapacket is a data packet whose transmission does not succeed and whichhas a smallest sequence number in the transmission window. In theembodiments, by duplicating the first failed data packet to the at leastone other link, the first failed data packet can be retransmitted onmultiple links, thereby improving probability of successfulretransmission. Further, compared with data retransmission on a singlelink, the retransmission in the embodiments of the present disclosurecan be performed on multiple links, which may greatly lower latency ofretransmission.

Further, duplicating the first failed data packet in the transmissionwindow to the at least one other link of the multiple links includes:predicting whether the transmission window is in a data packet fullcondition, wherein when a difference between an end sequence number ofthe transmission window and a maximum sequence number of data packets inthe transmission window is less than a first preset threshold, thetransmission window is determined to be in the data packet fullcondition; and if the transmission window is in the data packet fullcondition, duplicating the first failed data packet in the transmissionwindow to the at least one other link of the multiple links, wherein thefirst preset threshold is a positive integer. In the embodiments,whether the transmission window is in a data packet full condition isearly predicted, and if the transmission window is in the data packetfull condition, the first failed data packet in the transmission windowis duplicated to the at least one other link, which may solvetransmission window blocking.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of data transmission in a multi-link system inexisting techniques;

FIG. 2 is a diagram illustrating data flowing into two links in existingtechniques;

FIG. 3 is a flow chart of a data packet transmission method according toan embodiment; and

FIG. 4 is a structural diagram of a data packet transmission deviceaccording to an embodiment.

DETAILED DESCRIPTION

As described in the background, data transmission blocking more likelyoccurs in a multi-link system, and no solution is available at present.

Those skilled in the art can understand that, in existing techniques,when sequence numbers of transmitted data packets reach the end of a TXwindow, there may be a first data packet with a relatively smallsequence number in the TX window whose transmission does not succeed. Inthis case, a new data packet cannot be transmitted until retransmissionof the first data packet succeeds or the first data packet is dropped.At a same TX window size, data transmission blocking more likely occursin the multi-link system than in a single-link system.

FIG. 1 is a diagram of data transmission in a multi-link system inexisting techniques. As shown in FIG. 1, there are two links, includinga link CH1 and a link CH2. When a WLAN access point (AP) interacts witha station (STA), data flows into a LMAC (Lower MAC) layer (shown asLMAC1 and LMAC2) and a physical layer (shown as PHY1 and PHY2) via aMedium Access Control (MAC) layer of a transmitter, then is transmittedto a physical layer (shown as PHY1 and PHY2) and a LMAC layer (shown asLMAC1 and LMAC2) of a receiver via the links CH1 and CH2, and then isuploaded to a MAC layer.

The links CH1 and CH2 are two different links, which may be in a samefrequency band or different frequency bands. For example, the links CH1and CH2 are in a frequency band of 2 GHz and a frequency band of 5 GHz,respectively. In some embodiments, data to be transmitted is stored in aqueuing list of a link and transmitted after the link is accessed.

Referring to FIG. 2, FIG. 2 is a diagram illustrating data flowing intotwo links in existing techniques. In FIG. 2, data packets 101 to betransmitted include a data packet A, a data packet B, a data packet C, adata packet D, a data packet E and etc. In some embodiments, availablelinks for each data packet to be transmitted are specified. In someembodiments, two links may be assigned for each data packet to betransmitted. Referring to FIG. 1, in a transmission of non-aggregationand non-QoS, a terminal includes two physical layers, and links CH1 andCH2. A queuing list 102 of the link CH1 includes the data packets A, B,C, D, E and etc., and a queuing list 103 of the link CH2 includes thedata packets A, B, C, D, E and etc. All the data packets to betransmitted can be transmitted via any physical layer. The data packetsto be transmitted are stored in corresponding queuing lists (the queuinglist 102 and the queuing list 103). When the link CH1 obtains atransmission opportunity, the data packet A is transmitted via the linkCH1, and is removed from the queuing list 103. Afterward, when the linkCH2 obtains a transmission opportunity, the data packet B is transmittedvia the link CH2, and is removed from the queuing list 102.

In the multi-link system, when a solution similar to that shown in FIG.2 is adopted, the number of available links increases. In this case, ifquality of the links is high, transmission of the data packets is spedup. However, if quality of one link is low and transmission of a datapacket on that link fails, while the data packet has been removed fromother links and remaining data packets can be transmitted via the otherlinks, it is likely that a TX window is in a data packet full condition,which may cause data transmission blocking.

Embodiments of the present disclosure provide a data packet transmissionmethod includes: during multi-link transmission, duplicating a firstfailed data packet in a transmission window to at least one other linkof multiple links, wherein the multiple links include a first link onwhich the first failed data packet is transmitted and the at least oneother link; and retransmitting the first failed data packet on the atleast one other link and the first link, wherein the first failed datapacket is a data packet whose transmission does not succeed and whichhas a smallest sequence number in the transmission window.

In the embodiments, by duplicating the first failed data packet to theat least one other link, the first failed data packet can beretransmitted on multiple links, thereby improving probability ofsuccessful retransmission. Further, compared with data retransmission ona single link, the retransmission in the embodiments of the presentdisclosure can be performed on multiple links, which may greatly lowerlatency of retransmission.

In order to clarify the objects, characteristics and advantages of thedisclosure, embodiments of present disclosure will be described indetail in conjunction with accompanying drawings.

FIG. 3 is a flow chart of a data packet transmission method according toan embodiment. The method may be performed by a terminal, such as a WLANAP or a WLAN STA. In some embodiments, the method may include S301 andS302.

In S301, during multi-link transmission, a first failed data packet in atransmission window is duplicated to at least one other link of multiplelinks, wherein the multiple links include a first link on which thefirst failed data packet is transmitted and the at least one other link.

In S302, the first failed data packet is retransmitted on the at leastone other link and the first link.

The first failed data packet is a data packet whose transmission doesnot succeed and which has a smallest sequence number in the transmissionwindow.

In some embodiments, if a WLAN system is a multi-link system, WLAN datatransmission may be performed on the multiple links.

In S301, when there are multiple links, for a data packet on aparticular link, if transmission of the data packet fails and the datapacket has a smallest sequence number in the transmission window, thedata packet may be considered as the first failed data packet. In thiscase, if the terminal has at least one other available link other thanthe first link, the terminal may duplicate the first failed data packetin the transmission window to the at least one other link, where themultiple links include the first link on which the first failed datapacket is transmitted and the at least one other link.

In some embodiments, when a difference between an end sequence number ofthe transmission window and a maximum sequence number of data packets inthe transmission window is less than a first preset threshold, thetransmission window is determined to be in a data packet full condition,wherein the first preset threshold is a positive integer. Thetransmission window being in the data packet full condition indicatesthat the transmission window is filled with data packets or will soon befilled with data packets.

In some embodiments, if a difference between the sequence number of thefirst failed data packet and a start sequence number of the transmissionwindow exceeds a second preset threshold, a message of updating thestart sequence number of the transmission window may be transmitted bythe terminal, wherein the message is carried by a Block AcknowledgementRequest (BAR) frame, a predefined transmission window start sequencenumber update frame (for example, a newly defined signaling frame), adata frame with piggyback information or a control signaling frame.

Afterward, if receiving an acknowledgement message from a receiver ofthe data packets, the terminal may update the start sequence number ofthe transmission window, wherein the updated start sequence number ofthe transmission window is equal to a sum of the start sequence numberof the transmission window and a third preset threshold, wherein thesecond preset threshold and the third preset threshold are positiveintegers, the third preset threshold is not less than 1 and not greaterthan N, and N is the difference between the sequence number of the firstfailed data packet and the start sequence number of the transmissionwindow.

In some embodiments, the terminal may duplicate the first failed datapacket in the transmission window to the at least one other link of themultiple links, so as to transmit the first failed data packet onmultiple links.

In S302, the terminal may retransmit the first failed data packet on theat least one other link and the first link.

In some embodiments, if there are more than one available links, theterminal may retransmit the first failed data packet in parallel on themore than one available links.

In some embodiments, if there is merely one available link currently,the terminal may transmit the first failed data packet on the availablelink. If the terminal obtains one or more other available links duringthe transmission of the first failed data packet and when a feedbackmessage of successful transmission has not been received, the terminalmay redundantly retransmit the first failed data packet on the one ormore other available links, so that the receiver can successfullyreceive the first failed data packet as soon as possible.

In some embodiments, for the links on which the first failed data packetis transmitted, no matter on which link the retransmission of the firstfailed data packet succeeds, the transmission of the first failed datapacket on other links may stop, and the first failed data packet may beremoved from the links. If retransmission of the first failed datapacket does not succeed, the first failed data packet may continue to beretransmitted on the multiple links until retransmission on one of thelinks succeeds or a maximum number of data packet retransmissions isreached.

It should be noted that the maximum number of data packetretransmissions may be a total number of transmissions on all themultiple links, or may be a maximum number of retransmissionsindependently counted by each link. In this case, the total number oftransmissions of the first failed data packet is greater than a maximumnumber of data packet retransmissions in the existing techniques.

In some embodiments, if retransmission of the first failed data packetsucceeds, and transmission of all other data packets in the transmissionwindow succeeds, the terminal may update a start sequence number of thetransmission window, wherein the updated start sequence number of thetransmission window is an end sequence number of the transmission windowplus one.

In some embodiments, if retransmission of the first failed data packetsucceeds, and transmission of at least one other data packet (itssequence number is greater than that of the first failed data packet) inthe transmission window does not succeed, the terminal may update thestart sequence number of the transmission window, wherein the updatedstart sequence number of the transmission window is equal to thesequence number of the at least one other failed data packet. In someembodiments, if the difference between the sequence number of the atleast one other failed data packet and the sequence number of the firstfailed data packet is small, to avoid frequent update of the startsequence number of the transmission window, the start sequence number ofthe transmission window may be updated after the retransmission of theat least one other failed data packet succeeds.

An example is described in detail below.

Assume that the start sequence number of the TX window is WinStart, theend sequence number of the TX window is WinEnd, length of the TX windowis WinSize=WinEnd−WinStart+1, and SN represents a sequence number of adata packet and is a non-negative integer. In the example, a data packetwith a sequence number SN_f is a data packet whose transmission does notsucceed and which has a smallest sequence number in the TX window, andSN_e is a maximum sequence number of the data packets in the TX window.When SN_e=WinEnd, it indicates that the TX window is in a data packetfull condition.

In the multi-link system, to effectively avoid TX window blocking causedby failure of transmission of the data packet with a relatively smallsequence number, an early prediction mechanism is introduced in theembodiments of the present disclosure.

In some embodiments, TX_window_full_alarm represents a predictionresult, where TX_window_full_alarm of 1 indicates that the TX window isin a data packet full condition, TX_window_full_alarm of 0 indicatesthat the TX window is not in a data packet full condition. In someembodiments, when WinEnd−SN_e<=TH1, TX_window_full_alarm=1; otherwise,TX_window_full_alarm=0.

In some embodiments, if TX_window_full_alarm=1 and SN_f>WinStart,WinStart may be updated to avoid a data packet full condition of the TXwindow. In some embodiments, to avoid too frequent update of WinStart,the following method may be used. If SN_f−WinStart>=TH2, the originalWinStart may be replaced with (WinStart+Delta), where1<=Delta<=(SN_f−WinStart).

Those skilled in the art cam understand that before updating WinStart,the terminal may transmit a BAR frame carrying a message of updating thestart sequence number of the transmission window, so as to notify thereceiver to update the start sequence number of the transmission window.The update transmission window start sequence number message may becarried by a BAR frame, a predefined transmission window start sequencenumber update frame, a data frame with piggyback information or acontrol signaling frame. After receiving an acknowledgement from thereceiver, the terminal and the receiver may update WinStart, andaccordingly, WinEnd is updated with the update of WinStart.

In some embodiments, if TX_window_full_alarm=1, the first failed datapacket with sequence number SN_f may be duplicated to other channels fortransmission, and the duplicated data packet has a higher priority.

In some embodiments, after retransmission of the first failed datapacket with the sequence number SN_f on any link succeeds, there maystill be other data packets whose transmission does not succeed in theTX window. Assuming that among the other data packets whose transmissiondoes not succeed, a smallest sequence number is new_SN_f, and thus thedata packet with the sequence number new_SN_f becomes a new first faileddata packet in the current TX window. In this case, if the startsequence number of the TX window is updated, the updated start sequencenumber is new_SN_f.

In some embodiments, if retransmission of the data packet with thesequence number SN_f succeeds, but new_SN_f−SN_f is too small, the startsequence number may be updated only once to the latest new_SN_f aftermultiple data packet retransmissions succeed.

In some embodiments, after retransmission of the first failed datapacket with the sequence number SN_f succeeds and transmission of allother data packets in the TX window succeeds, the updated start sequencenumber of the TX window may be SN_e+1, where SN_e is a maximum sequencenumber of the data packets in the TX window.

Those skilled in the art can understand that if retransmission of thefirst failed data packet with the sequence number SN_f succeeds on anylink, the retransmission of the first failed data packet with thesequence number SN_f on other links may stop and be deleted. Onceretransmission of the data packet with the sequence number SN_fsucceeds, the retransmission is terminated, and the data packet with thesequence number SN_f is removed.

From above, in the embodiments of the present disclosure, in a WLANmulti-link system, data packet transmission blocking caused by faileddata packets may be mitigated in a WLAN multi-link system. Further, theretransmission can be performed on multiple links, which may increaseprobability of successful retransmission and lower latency ofretransmission.

FIG. 4 is a structural diagram of a data packet transmission deviceaccording to an embodiment. The device 4 can execute the method as shownin FIG. 3, and may be applied in a terminal, such as a WLAN AP or a WLANSTA.

In some embodiments, the device 4 may include: a duplication circuitry41 configured to: during multi-link transmission, duplicate a firstfailed data packet in a transmission window to at least one other linkof multiple links, wherein the multiple links include a first link onwhich the first failed data packet is transmitted and the at least oneother link; and a retransmission circuitry 42 configured to retransmitthe first failed data packet on the at least one other link and thefirst link, wherein the first failed data packet is a data packet whosetransmission does not succeed and which has a smallest sequence numberin the transmission window.

In some embodiments, the duplication circuitry 41 may include: aprediction sub-circuitry 411 configured to predict whether thetransmission window is in a data packet full condition, wherein when adifference between an end sequence number of the transmission window anda maximum sequence number of data packets in the transmission window isless than a first preset threshold, the transmission window isdetermined to be in the data packet full condition; and a duplicationsub-circuitry 412 configured to: if the transmission window is in thedata packet full condition, duplicate the first failed data packet inthe transmission window to the at least one other link of the multiplelinks, wherein the first preset threshold is a positive integer.

In some embodiments, the device 4 may further include a first updatecircuitry 43 configured to: if a difference between the sequence numberof the first failed data packet and a start sequence number of thetransmission window exceeds a second preset threshold, update the startsequence number of the transmission window, wherein the updated startsequence number of the transmission window is equal to a sum of thestart sequence number of the transmission window and a third presetthreshold, wherein the second preset threshold and the third presetthreshold are positive integers, the third preset threshold is not lessthan 1 and not greater than N, and N is the difference between thesequence number of the first failed data packet and the start sequencenumber of the transmission window.

In some embodiments, the device 4 may further include a transmissioncircuitry 44 configured to transmit a message of updating the startsequence number of the transmission window before the start sequencenumber of the transmission window is updated, wherein the message iscarried by a block acknowledgement request frame, a predefinedtransmission window start sequence number update frame, a data framewith piggyback information or a control signaling frame.

In some embodiments, the device 4 may further include: a determinationcircuitry 45 configured to: before whether the transmission window is ina data packet full condition is predicted, determine whether adifference between the sequence number of the first failed data packetand a start sequence number of the transmission window is less than orequal to a fourth preset threshold; and an execution circuitry 46configured to: if the difference is determined to be less than or equalto the fourth preset threshold, predict whether the transmission windowis in a data packet full condition.

In some embodiments, the device 4 may further include a second updatecircuitry 47 configured to: if retransmission of the first failed datapacket succeeds, and transmission of at least one other data packet inthe transmission window does not succeed, update a start sequence numberof the transmission window, wherein the updated start sequence number ofthe transmission window is a smallest sequence number of the at leastone data packet.

In some embodiments, the device 4 may further include a third updatecircuitry 48 configured to: if retransmission of the first failed datapacket succeeds, and transmission of all other data packets in thetransmission window succeeds, update a start sequence number of thetransmission window, wherein the updated start sequence number of thetransmission window is an end sequence number of the transmission windowplus one.

In some embodiments, the device 4 may further include a stop circuitry49 configured to: if retransmission of the first failed data packetsucceeds, stop retransmitting the first failed data packet.

More details of working principles and working modes of the device 4 canbe found in the above descriptions of FIG. 3, and are not describedhere.

In an embodiment of the present disclosure, a storage medium havingcomputer instructions stored therein is provided, wherein when thecomputer instructions are executed, the above method as shown in FIG. 3is performed. The storage medium may include a non-volatile ornon-transitory memory. The storage medium may include a Read Only Memory(ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk.

In an embodiment of the present disclosure, a terminal including amemory and a processor is provided, wherein the memory has computerinstructions stored therein, and when the processor executes thecomputer instructions, the above method as shown in FIG. 3 is performed.In some embodiments, the terminal may be a WLAN AP or a WLAN STA.

Although the present disclosure has been disclosed above with referenceto preferred embodiments thereof, it should be understood that thedisclosure is presented by way of example only, and not limitation.Those skilled in the art can modify and vary the embodiments withoutdeparting from the spirit and scope of the present disclosure.

What is claimed is:
 1. A data packet transmission method, comprising:during multi-link transmission, duplicating a first failed data packetin a transmission window to at least one other link of multiple links,wherein the multiple links comprise a first link on which the firstfailed data packet is transmitted and the at least one other link; andretransmitting the first failed data packet on the at least one otherlink and the first link, wherein the first failed data packet is a datapacket whose transmission does not succeed and which has a smallestsequence number in the transmission window, wherein duplicating thefirst failed data packet in the transmission window to the at least oneother link of the multiple links comprises: predicting whether thetransmission window is in a data packet full condition, wherein based ona difference between an end sequence number of the transmission windowand a maximum number among sequence numbers of data packets in thetransmission window being less than a first preset threshold, thetransmission window is determined to be in the data packet fullcondition; and based on the transmission window being in the data packetfull condition, duplicating the first failed data packet in thetransmission window to the at least one other link of the multiplelinks, and wherein the first preset threshold is a positive integer. 2.The method according to claim 1, wherein prior to duplicating the firstfailed data packet in the transmission window to the at least one otherlink of the multiple links, the method further comprises: based on adifference between the sequence number of the first failed data packetand a start sequence number of the transmission window exceeding asecond preset threshold, updating the start sequence number of thetransmission window, wherein the updated start sequence number of thetransmission window is equal to a sum of the start sequence number ofthe transmission window and a third preset threshold, wherein the secondpreset threshold and the third preset threshold are positive integers,the third preset threshold is not less than 1 and not greater than N,and N is the difference between the sequence number of the first faileddata packet and the start sequence number of the transmission window. 3.The method according to claim 2, wherein prior to updating the startsequence number of the transmission window, the method furthercomprises: transmitting a message of updating the start sequence numberof the transmission window, wherein the message is carried by a blockacknowledgement request frame, a predefined transmission window startsequence number update frame, a data frame with piggyback information ora control signaling frame.
 4. The method according to claim 1, whereinprior to predicting whether the transmission window is in a data packetfull condition, the method further comprises: determining whether adifference between the sequence number of the first failed data packetand a start sequence number of the transmission window is less than orequal to a fourth preset threshold, wherein based on the differencebeing determined to be less than or equal to the fourth presetthreshold, determination of whether the transmission window is in a datapacket full condition is performed.
 5. The method according to claim 1,further comprising: based on retransmission of the first failed datapacket succeeding, and transmission of at least one other data packet inthe transmission window does not succeed, updating a start sequencenumber of the transmission window, wherein the updated start sequencenumber of the transmission window is a smallest sequence number of theat least one data packet.
 6. The method according to claim 1, furthercomprising: based on retransmission of the first failed data packetsucceeding, and transmission of all other data packets in thetransmission window succeeds, updating a start sequence number of thetransmission window, wherein the updated start sequence number of thetransmission window is an end sequence number of the transmission windowplus one.
 7. The method according to claim 6, further comprising: basedon retransmission of the first failed data packet succeeding, stoppingretransmitting the first failed data packet.
 8. A non-transitory storagemedium storing one or more programs, the one or more programs comprisingcomputer instructions, which, when executed by a processor, cause theprocessor to: during multi-link transmission, duplicate a first faileddata packet in a transmission window to at least one other link ofmultiple links, wherein the multiple links comprise a first link onwhich the first failed data packet is transmitted and the at least oneother link; and retransmit the first failed data packet on the at leastone other link and the first link, wherein the first failed data packetis a data packet whose transmission does not succeed and which has asmallest sequence number in the transmission window, wherein duplicatingthe first failed data packet in the transmission window to the at leastone other link of the multiple links comprises: predicting whether thetransmission window is in a data packet full condition, wherein based ona difference between an end sequence number of the transmission windowand a maximum number among sequence numbers of data packets in thetransmission window being less than a first preset threshold, thetransmission window is determined to be in the data packet fullcondition; and based on the transmission window being in the data packetfull condition, duplicating the first failed data packet in thetransmission window to the at least one other link of the multiplelinks, wherein the first preset threshold is a positive integer.
 9. Aterminal comprising a memory and a processor, wherein the memory storesone or more programs, and the one or more programs comprise computerinstructions, which, when executed by the processor, cause the processorto: during multi-link transmission, duplicate a first failed data packetin a transmission window to at least one other link of multiple links,wherein the multiple links comprise a first link on which the firstfailed data packet is transmitted and the at least one other link; andretransmit the first failed data packet on the at least one other linkand the first link, wherein the first failed data packet is a datapacket whose transmission does not succeed and which has a smallestsequence number in the transmission window, wherein duplicating thefirst failed data packet in the transmission window to the at least oneother link of the multiple links comprises: predicting whether thetransmission window is in a data packet full condition, wherein based ona difference between an end sequence number of the transmission windowand a maximum number among sequence numbers of data packets in thetransmission window being less than a first preset threshold, thetransmission window is determined to be in the data packet fullcondition; and based on the transmission window being in the data packetfull condition, duplicating the first failed data packet in thetransmission window to the at least one other link of the multiplelinks, wherein the first preset threshold is a positive integer.